package com.lanren.common.base.impl;

import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.disposables.Disposable;

/**
 * @ClassName BaseModel
 * @Description TODO
 * @Author chongheng.wang
 * @Date 2020/3/11 10:58
 * @Version 1.0
 */
public abstract class BaseModel {
    CompositeDisposable compositeDisposable;

    protected void initDispoable() {
        compositeDisposable = new CompositeDisposable();
    }

    protected CompositeDisposable getDisposable() {
        return compositeDisposable;
    }

    protected void addDisposable(Disposable disposable) {
        compositeDisposable.add(disposable);
    }

    public void clearDisposable() {
        compositeDisposable.dispose();
        if (compositeDisposable != null) {
            compositeDisposable = null;
        }
    }
}
